package Controlador;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.WindowConstants;
import Vista.VistaPrincipal;
import javax.swing.WindowConstants;
import Controlador.ControladorVistaConsulta;
import Vista.VistaConsultas;
import Vista.VistaTablero;

public class ControladorVistaPrincipal implements ActionListener, ItemListener {
	VistaPrincipal vp;
	VistaConsultas vc;
	VistaTablero vt;
	
	public ControladorVistaPrincipal(VistaPrincipal vp) {
		this.vp = vp;

		
		
	}
	public ControladorVistaPrincipal(){
		super();
		this.vp= new VistaPrincipal();
		this.vp.setLocationRelativeTo(null);
		this.vp.setVisible(true);	
		this.vp.addListener(this);
	}

	@Override
	public void actionPerformed(ActionEvent ae) {
		//String actionCommand = e.getActionCommand();
		
		if(ae.getActionCommand().equals("Facil")){
			//vt.setVisible(false);
			vp.cargarPartida();
			
		}
		if (ae.getActionCommand().equals("Intermedio")){
			//vt.setVisible(false);
			vp.cargarPartida2();
		}
		if (ae.getActionCommand().equals("Dificil")){
			vp.cargarPartida3();
		}
		if(ae.getActionCommand().equals("Salir")){
			System.exit(0);
		}
		if(ae.getActionCommand().equals("Mejores Puntajes")){
			//vc.setVisible(true);
			new ControladorVistaConsulta();
}
	}
	@Override
	// Si esta jugando y quiere cambiar de nivel envia un mensaje preguntando si desea cambiar de nivel

	public void itemStateChanged(ItemEvent ie) {
		System.out.println(Integer.parseInt(ie.toString()));
		if(ie.getItem().toString().equals("facil")){
			if(vp.isJugando()){
				vp.mostrarMensaje("desea cambiar partida");
				vp.cerrarPartida();
				//new JOptionPane(null, JOptionPane.QUESTION_MESSAGE,
						//JOptionPane.YES_NO_OPTION);
				vp.setDificultad(Integer.parseInt(ie.getItem().toString()));
				System.out.println(Integer.parseInt(ie.getItem().toString()));
			}	
		}	
	}
}
